import { defineStore } from 'pinia'

export const userStore = defineStore('user',{
    //存储全局变量
    state:()=>({
        user:{},         //  用户信息里面包含token
        loggedIn:false,  //  是否登录
        permissionCodes: []
    }),
    persist: {
        enabled: true,
        storage: localStorage
    },
    //同步修改状态信息
    actions: {
        // 登录成功后调用，设置用户信息、token 和登录状态
        loginSuccess(userInfo, token) {
            this.user = userInfo;
            this.loggedIn = true;
        },
        // 退出登录时调用，清除用户信息、token 和登录状态
        logout() {
            this.user = {};
            this.loggedIn = false;
            localStorage.removeItem('token');
            this.permissionCodes = [];
        },
        // 更新用户信息
        updateUser(user) {
            this.user = user;
        }
    }
})


